package com.karaoke.android.data.domain

import java.io.Serializable

/**
 * Created by allen on 2017/4/20.
 */

open class PageInfo<T> : Serializable
{

    //当前页
    var pageNum: Int = 0
    //每页的数量
    var pageSize: Int = 0
    //当前页的数量
    var size: Int = 0

    //由于startRow和endRow不常用，这里说个具体的用法
    //可以在页面中"显示startRow到endRow 共size条数据"

    //当前页面第一个元素在数据库中的行号
    var startRow: Int = 0
    //当前页面最后一个元素在数据库中的行号
    var endRow: Int = 0
    //总记录数
    var total: Long = 0
    //总页数
    var pages: Int = 0
    //结果集
    var list: List<T> = ArrayList()

    //前一页
    var prePage: Int = 0
    //下一页
    var nextPage: Int = 0

    //是否为第一页
    var isFirstPage = false
    //是否为最后一页
    var isLastPage = false
    //是否有前一页
    var hasPreviousPage = false
    //是否有下一页
    var hasNextPage = false
    //导航页码数
    var navigatePages: Int = 0
    //所有导航页号
    var navigatepageNums: IntArray? = null
    //导航条上的第一页
    var navigateFirstPage: Int = 0
    //导航条上的最后一页
    var navigateLastPage: Int = 0
}
